package com.example.demo.entity.pojo;

import java.util.Date;
import java.io.Serializable;

/**
 * Agent对话消息表(AgentMessage)实体类
 *
 * @author makejava
 * @since 2025-07-13 18:30:30
 */
public class AgentMessage implements Serializable {
    private static final long serialVersionUID = -59070622164418127L;

    /**
     * 消息ID
     */
    private Integer id;

    /**
     * 会话ID
     */
    private Integer conversationId;

    /**
     * 消息类型：user, assistant, system, tool
     */
    private String messageType;

    /**
     * 消息内容
     */
    private String content;

    /**
     * 工具调用信息
     */
    private String toolCalls;

    /**
     * 工具执行结果
     */
    private String toolResults;

    /**
     * 使用的token数
     */
    private Integer tokensUsed;

    /**
     * 模型信息
     */
    private String modelInfo;

    /**
     * 创建时间
     */
    private Date createTime;

    // Getters and Setters
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getConversationId() {
        return conversationId;
    }

    public void setConversationId(Integer conversationId) {
        this.conversationId = conversationId;
    }

    public String getMessageType() {
        return messageType;
    }

    public void setMessageType(String messageType) {
        this.messageType = messageType;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getToolCalls() {
        return toolCalls;
    }

    public void setToolCalls(String toolCalls) {
        this.toolCalls = toolCalls;
    }

    public String getToolResults() {
        return toolResults;
    }

    public void setToolResults(String toolResults) {
        this.toolResults = toolResults;
    }

    public Integer getTokensUsed() {
        return tokensUsed;
    }

    public void setTokensUsed(Integer tokensUsed) {
        this.tokensUsed = tokensUsed;
    }

    public String getModelInfo() {
        return modelInfo;
    }

    public void setModelInfo(String modelInfo) {
        this.modelInfo = modelInfo;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
}
